1. Field
Embodiments of the invention relate to the field of computer networking; and more specifically, to optimizing forwarding data paths supporting mobile nodes.
2. Background
A mobile network is one that supports users with mobile nodes staying connected to the mobile network as the users move their mobile nodes to different points along the mobile network. FIG. 1 illustrates one embodiment of a mobile network 100. While in one embodiment, mobile network 100 supports a Worldwide Interoperability for Microwave Access (WiMAX), in alternate embodiments, mobile network 100 supports the same and/or different wireless and wired access technologies known in the art (802.11, Ethernet, optical fiber, copper, Digital Subscriber Line (DSL), Asynchronous Transfer Mode (ATM), etc.). In FIG. 1, mobile nodes 102A-B couple to base station systems (BSS) 104A-B over an air interface known in the art (WiMAX, 802.11a/b/g/n, etc.). BSS 104A-B couple to foreign agent/access services network gateway (FA/ASN-GW) 106. In one embodiment, BSS 104A-B couple to FA/ASN-GW 106 through a layer 2 or layer 3 network. FA/ASN-GW 106 further couples to home agent/core services network (HA/CSN) 108, which couples to Internet/Core Network 110. In an alternative embodiment, BSS 104A-B can couple to HA-CSN 108 in addition and/or in lieu of coupling to FA/ASN-GW 106 (not shown).
Typically, a mobile node registers with the mobile network 100 in order to use this network. In one embodiment, mobile nodes 102A-B register with FA/ASN-GW 106 through a protocol known in the art that provides mobile connectivity (Mobile-Internet Protocol (Mobile-IP), etc.). In one embodiment, mobile node 102A-B sends a registration request (RRQ) to FA/ASN-GW 106, which forwards this request to HA/CSN 108. HA/CSN 108 responds with a registration reply which FA/ASN-GW 106 forwards to the mobile node. Receiving the reply completes the registration process. FA/ASN-GW 106 installs a route towards the mobile node with access port information. The access port (not shown) is the link on which the RRQ arrived. The ingress engine installs the route installed in the respective forwarding information base (FIB) with a key representing the mobile node on the egress line card. The egress engine has an egress key on the access port that represents information on how to reach the mobile node. While in one embodiment, the key is a lookup handle that is used to lookup in a table, in alternate embodiment the key can be some other way to identify information of a mobile node stored in the ingress and/or egress engines. While in one embodiment the information in the egress key is layer-2 information, in alternate embodiments the information is the same and/or different (layer-3 information, tunnel information, line-card slot information, encapsulation information, etc.).
In one embodiment, mobiles node 102A-B can change BSS 104A-B because mobile nodes 102A-B are mobile and do not typically get access to core network 110 through the same BSS 104A-B. Two types of mobility events can be defined within mobile network 100. Macro-mobility (not shown) is when mobile node 102A-B moves between BSS 104A-B coupled to different FA/ASN-GW 106. Micro-mobility occurs when a mobile node 102A-B moves between different BSS 104A-B within the domain of a single FA/ASN-GW 106. In one embodiment, a micro-mobility event occurs when mobile node 102A changes coupling from BSS 104A to BSS 104B.
Mobility events are dispatched by the forwarding plane of FA/ASN-GW 106 to the FA/ASN-GW 106 control plane. This control plane reprograms the forwarding plane so that data traffic destined for the mobile node causing the mobility event is appropriately forwarded by the forwarding plane of FA/ASN-GW 106. However, interactions between the control plane and forwarding plane of FA/ASN-GW 106 can introduce considerable delay to the response time for the mobility event, such as multiple levels of interprocess communications, latency in the kernels managing the forwarding and control planes, cleanup of the forwarding state, time take to program the forwarding plane, etc. Furthermore, higher rates of mobility events can causes a higher strain on system resources because of the factors mentioned above. Delays in mobility event response can lead to disruption of data traffic forwarding to and/or from mobile nodes 102A-B.